Information processing device and information processing method, program storage medium, program, data structure, and manufacturing method for storage medium

ABSTRACT

Described herein is an information processing device, information processing method, program storage medium, program, data structure, and manufacturing method for storage medium wherein a user can determine subtitles with certainty. That is, an attribute buffer holds at least font style specifying information which specifies a font style to be applied for a character object for a subtitle held in a character object buffer, and width specifying information which can specify the width of the outline of the character object corresponding to the font style having an outline. In the case that the font style having an outline is specified in the font style specifying information, a font rasterizer obtains font style data of the font style having an outline, updates the font style data based on the width specifying information, and converts the character object into subtitle data, using at least the updated font style data.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. application Ser. No.11/629,082 filed Dec. 11, 2006, the entire contents of which isincorporated herein by reference. U.S. application Ser. No. 11/629,082is a National Stage of PCT/JP2006/307334 filed Apr. 6, 2006, and claimspriority under 35 U.S.C. 119 to Japanese Application No. 2005-113302filed Apr. 11, 2005.

TECHNICAL FIELD

The present invention relates to an information processing device andinformation processing method, program storage medium, program, datastructure, and manufacturing method for storage medium, and particularlyrelates to an information processing device and information processingmethod, program storage medium, program, data structure, andmanufacturing method for storage medium wherein a user can determinesubtitles with certainty.

BACKGROUND ART

One of the specifications for playback of a DVD (Digital Versatile Disc)is that of a DVD video format. With the DVD video format, content datasuch as video or audio is multiplexed along with various types ofsub-picture data such as subtitles, and are recorded on the disk as aprogram stream. Also, navigation data for playing back such streaminteractively is stored on the disk. Such technology is disclosed in forexample Patent Document 1, Patent Document 2, and so forth.

Here, interactive playback refers to playback such as playback from adesired position or in a desired order, as well as playback wherein auser uses various types of functionality of a DVD, such as a multi-anglefunction which can play back a moving image which is image-captured fromvarious angles, a multi-language function which can play back in adesired language from multiple languages, a parental control functionwhich does not perform playback of certain scenes such as violencescenes, and the like.

A program stream can multiplex multiple audio streams and multiplesubtitle data streams. Thus, for example, data for subtitles in multipledifferent languages can be recorded onto one disk as to one videocontent such as a movie, and the user can select the audio of thedesired language or subtitles before starting playback or duringplayback of the video.

[Patent Document 1] Japanese Unexamined Patent Application PublicationNo. 2003-140662

[Patent Document 2] Japanese Unexamined Patent Application PublicationNo. 2002-311967

DISCLOSURE OF THE INVENTION Problems to be Solved by the Invention

However, although the subtitles and video are simultaneously playedback, that is to say, although the video for each frame played backconsecutively and the subtitles corresponding thereto are included, ofthese frames, there have been problems with a frame wherein for examplethe color of the subtitle and the color of the video is the same orsimilar, which from the perspective of the user, the subtitles and thevideo have been integrated, and the subtitles cannot be differentiated.

The present invention has been made with consideration for such asituation, and provides a configuration wherein the user candifferentiate the subtitles with certainty.

Means for Solving the Problems

The information processing device according to the present invention isan information processing device for generating subtitle data to displaysubtitles corresponding to a predetermined AV stream, comprisingcharacter object holding means for holding a character object in orderto display the subtitles; attribute data holding means for holdingattribute data which includes at least font style specifying informationwhich can specify at least a font style with an outline as a font styleto be applied for the character objects, and width specifyinginformation which can specify the width of the outline of the characterobject corresponding to the font style having an outline in the casethat the font style having an outline is specified in the font stylespecifying information; and converting means for obtaining font styledata of the font style having an outline in the case whereby the fontstyle having an outline is specified in the font style specifyinginformation held by the attribute data holding means, updating the fontstyle data based on the width specifying information held by theattribute data holding means, and converting the character object heldby the character object holding means into subtitle data, using at leastthe updated font style data.

The converting means may be configured to further include: obtainingmeans for obtaining a first font style data of the font style having anoutline in the case that the font style having an outline is specifiedin the font style specifying information; width changing means forperforming processing to expand or contract the width of the characterobject outline corresponding to the first font style data obtained withthe obtaining means, based on the width specifying information, at thesame ratio for the inner side direction facing the outline portion ofthe character object and the opposite outer side direction thereof, andoutputting a second font style data of a font style having an outlinewherein the width thereof has been expanded or contracted in the innerside direction and the outer side direction; and synthesizing means forperforming processing to synthesize the character object datacorresponding to the first font style data obtained with the obtainingmeans onto the character object corresponding to the second font styledata output from the width changing means, and outputting the subtitledata formed by character object data of a font style having an outlinewherein the width thereof has been expanded or contracted in only theouter side direction, which is obtained as a result of the processing.

The attribute information held by the attribute data holding means mayfurther include: color specifying information which can specify thecolor of the outline for the character object corresponding to the fontstyle having an outline, in the case that the font style having anoutline is specified in the font style specifying information, wherein;the converting means updates the font style data based on the colorspecifying information further in addition to the width specifyinginformation held by the attribute data holding means, and converts thecharacter object held by the character object holding means into thesubtitle data, using at least the updated font style data.

The information processing method according to the present invention isan information processing method of an information processing device forgenerating subtitle data to display subtitles corresponding to apredetermined AV stream, and may include: a character object holdingcontrol step for controlling the holding of a character object in orderto display the subtitles; an attribute data holding control step forcontrolling the holding of attribute data which includes at least fontstyle specifying information which can specify at least a font stylehaving an outline as a font style to be applied for the characterobjects, and width specifying information which can specify the width ofthe outline of the character object corresponding to the font stylehaving an outline in the case that the font style having an outline isspecified in the font style specifying information; and a convertingstep for obtaining font style data of the font style having an outlinein the case whereby the font style having an outline is specified in thefont style specifying information held by the control processing of theattribute data holding control step, updating the font style data basedon the width specifying information held by the processing of theattribute data holding controlling step, and converting the characterobject held by the character object holding means into subtitle data,using at least the updated font style data.

The program storage medium and program of the present invention are eachthe program storage medium and program corresponding to the informationprocessing method of the present invention as described above.

With the information processing device and method, program storagemedium, and program according to the present invention, subtitle data isgenerated for displaying subtitles corresponding to the predetermined AVstream. Specifically, the subtitle data is generated as follows. Inother words, a character object for displaying subtitles is held, andalso attribute data is held which includes at least font stylespecifying information which can specify at least a font style having anoutline as a font style to be applied for the character objects, andwidth specifying information which can specify the width of the outlineof the character object corresponding to the font style having anoutline in the case that the font style having an outline is specifiedin the font style specifying information. Thus, font style data of afont style having the outline in the case whereby the font style havingan outline is specified in the held font style specifying information isobtained, the font style data based on the held width specifyinginformation is updated, and the held character object is converted intosubtitle data, using at least the updated font style data.

The data structure according to the present invention is a datastructure of information necessary for generating subtitle data todisplay subtitles corresponding to a predetermined AV stream, and mayinclude: a character object for displaying the subtitles; and attributedata which includes at least font style specifying information which canspecify at least the font style having an outline as a font style to beapplied for the character objects, and width specifying informationwhich can specify the width of the outline of the character objectcorresponding to the font style having an outline in the case that thefont style having an outline is specified in the font style specifyinginformation.

The data structure is included in a predetermined stream, and a clipinformation file which manages the predetermined stream can includespecifying information for specifying the file corresponding to thecharacter object.

The data structure is stored in a file separate from the file whereinthe AV stream is stored, and wherein the AV stream is specified by aPlayItem held in a PlayList file which is playback managing information,and wherein the data structure is specified by a SubPlayItem held in thePlayList file.

The recording medium according to the present invention is a datastructure of information necessary for generating subtitle data todisplay subtitles corresponding to a predetermined AV stream, and mayinclude: a character object for displaying the subtitles, and attributedata which includes at least font style specifying information which canspecify at least a font style having an outline as a font style to beapplied for the character objects, and width specifying informationwhich can specify the width of the outline of the character objectcorresponding to the font style having an outline in the case that thefont style having an outline is specified in the font style specifyinginformation.

A manufacturing method of the recording medium according to the presentinvention may include the steps of: generating data which has a certaindata structure, such data structure being of information necessary forgenerating subtitle data for the purpose of a playback device playingback subtitles corresponding to a predetermined AV stream, and furtherincluding a character object for displaying the subtitles; and attributedata which includes at least font style specifying information which canspecify at least a font style having an outline as a font style to beapplied for the character objects, and width specifying informationwhich can specify the width of the outline of the character objectcorresponding to the font style having an outline in the case that thefont style having an outline is specified in the font style specifyinginformation; and recording the generated data onto the recording mediumto be the playback object of the playback device.

With the data having a data structure according to the presentinvention, data recorded onto a recording medium according to thepresent invention, and data recorded onto a recording mediummanufactured with the manufacturing method of the recording mediumaccording to the present invention, subtitle data for displayingsubtitles corresponding to a predetermined AV stream is generated. Inother words, subtitle data is generated, using a character object fordisplaying the subtitles, and attribute data which includes at leastfont style specifying information which can specify at least the fontstyle having an outline as a font style to be applied for the characterobjects, and width specifying information which can specify the width ofthe outline of the character object corresponding to the font stylehaving an outline in the case that a font style having an outline isspecified in the font style specifying information.

Advantages

According to the present invention, when a predetermined AV stream isbeing played back, subtitles corresponding to the AV stream can bedisplayed. In particular, the user can differentiate the subtitles withcertainty.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram illustrating the configuration of a playbackdevice using an application of the present invention;

FIG. 2 is a diagram illustrating an example of an application format ona recording medium to be mounted on the playback device using anapplication of the present invention;

FIG. 3 is a diagram illustrating another example of an applicationformat on a recording medium to be mounted on the playback device usingan application of the present invention;

FIG. 4 is a functional block diagram for describing the function of thecontroller in FIG. 1;

FIG. 5 is a diagram illustrating an example of an optical disk filesystem and a local storage file system;

FIG. 6 is a diagram illustrating an example of a file system obtained bythe two file systems in FIG. 5 being merged;

FIG. 7 is a diagram describing a playlist and data which can bereferenced by a playlist;

FIG. 8 is a diagram for describing data to be additionally distributedlater;

FIG. 9 is a diagram illustrating a syntax of a SubPlayItem;

FIG. 10 is a diagram illustrating a configuration example of a textsubtitle file;

FIG. 11 is a diagram illustrating a syntax of the text subtitle file inFIG. 10;

FIG. 12 is a diagram illustrating the syntax of each segment configuringthe text subtitles in FIG. 10;

FIG. 13 is a diagram illustrating the segment_descriptor syntax of thesegment configuration elements in FIG. 12;

FIG. 14 is a diagram describing a value which can be specified with thesegment_type in FIG. 13;

FIG. 15 is a diagram illustrating the dialog_style_segment syntax ofeach segment configuring the text subtitles in FIG. 10;

FIG. 16 is a diagram describing the dialog_style_set syntax of thedialog_style_segment configuration elements in FIG. 15;

FIG. 17 is a diagram describing the dialog_style_set syntax of thedialog_style_segment configuration elements in FIG. 15;

FIG. 18 is a diagram describing a value which can be specified with theplayer_style_flag in FIG. 16;

FIG. 19 is a diagram describing a value which can be specified with thetext_flow in FIG. 16;

FIG. 20 is a diagram describing a value which can be specified with thetext_horizontal_alignment in FIG. 16;

FIG. 21 is a diagram describing a value which can be specified with thetext_vertical_alignment in FIG. 16;

FIG. 22 is a diagram describing a value which can be specified with thefont_style in FIG. 16;

FIG. 23 is a diagram illustrating an example of a table as to a Table9-59 (Data_type definition) of a conventional Blu-Ray Disc Read-OnlyFormat Version 0.89r3, the portions necessary for applying the presentinvention of which has been updated;

FIG. 24 is a diagram illustrating a virtual storage region of the localstorage in FIG. 1;

FIG. 25 is a block diagram for describing the detailed configuration ofthe decoder in FIG. 1;

FIG. 26 is a block diagram for describing the detailed configuration ofthe text subtitle processing unit in FIG. 25;

FIG. 27 is a block diagram for describing the detailed configuration ofthe font rasterizer in FIG. 26;

FIG. 28 is a diagram illustrating an example of character object data ofa normal font style;

FIG. 29 is a diagram illustrating an example of character object data ofan outline font style;

FIG. 30 is a diagram describing an example of a conventional method outof multiple changing methods for the size (width) of the outline;

FIG. 31 is a diagram describing an example of a method applying thepresent invention out of multiple changing methods for the size (width)of the outline;

FIG. 32 is a flowchart for describing playback processing;

FIG. 33 is a flowchart for describing content playback processing;

FIG. 34 is a flowchart for describing subtitle display processing;

FIG. 35 is a flowchart for describing subtitle display processing;

FIG. 36 is a diagram for describing the manufacturing of the recordingmedium whereupon data is recorded which can be played back with theplayback device in FIG. 1; and

FIG. 37 is a diagram describing the manufacturing of the recordingmedium whereupon data is recorded which can be played back with theplayback device in FIG. 1.

REFERENCE NUMERALS

-   1 playback device-   11 optical device-   21 controller-   22 optical disk drive-   23 memory-   24 local storage-   26 decoder-   31 menu screen display control unit-   32 operation input obtaining unit-   33 data acquiring unit-   34 local storage directory managing unit-   35 optical disk directory managing unit-   66 file system merging processing unit-   37 playback control unit-   81 control unit-   86 audio decoder-   87 MPEG video decoder-   92 text subtitle processing unit-   93 subtitle graphics plane processing unit-   94 synthesizing processing unit-   121 text data buffer-   122 character object buffer-   123 attribute data buffer-   124 font rasterizer-   125 bookmark buffer-   151 character object obtaining unit-   152 bookmark detecting unit-   153 rasterizing unit-   154 bookmark storage control unit-   155 font style detecting unit-   156 normal font style obtaining unit-   157 outline style process unit-   161 outline style obtaining unit-   162 color changing unit-   163 width changing unit-   164 synthesizing unit

BEST MODE FOR CARRYING OUT THE INVENTION

The embodiments of the present invention will be described below withreference to the attached drawings.

FIG. 1 is a block diagram illustrating a configuration of a playbackdevice 1 as an information processing device using an application of thepresent invention.

A controller 21 executes a previously prepared control program, orcontrols an optical disc drive 22 to read out a navigation program (tobe described later) recorded on an optical disc 11 and expands to memory23 and executes this, thereby controlling the operation of the entireplayback device 1. For example, the controller 21 can display apredetermined menu screen on an external display device when an opticaldisc 11 is mounted thereupon.

The optical disk drive 22 reads out data from the optical disk 11according to the control by the controller 21, and outputs the read outdata to the controller 21, memory 23, or a decoder 26. In the event thatthe information read out from the optical disk 11 is a navigationprogram or a PlayList or the like, the information read out from theoptical disk drive 22 is output to the controller 21 or the memory 23.In the event that the information read out from the optical disk 11 isan AV stream or text data, the information read out from the opticaldisk drive 22 is output to the decoder 26.

FIG. 2 is a diagram illustrating an example of an application format orthe recording medium. Here, recording medium includes an optical disk 11mounted on the playback device 1 applying the present invention, as wellas, for example, a magnetic disk or semiconductor memory.

The application format has two layers of PlayList and Clip, for thepurpose of managing the AV (Audio Visual) stream. Here, a pair of one AVstream or text data and a Clip Information which is information attachedthereto is considered to be one object, and these together are called aClip. Hereafter, a data file of an AV stream will be called an AV streamfile. Also, a data file of Clip Information will be called a ClipInformation file.

Generally, files used in a computer or the like are handled as bytestrings, but the content of the AV stream file is expanded along thetime axis, and the access point of the Clip is primarily specified bythe PlayList with a time stamp.

The Clip Information file is used for finding address information, witha time stamp, for decoding to be started of an AV stream file, when anaccess point of a Clip is identified by the PlayList with a time stamp.

The PlayList is a collection of information showing the playbacksegments of an AV stream. Information showing one playback segment of anAV stream is called a PlayItem, and a PlayItem is represented in a pairof an IN point of the playback segment on the time axis (playbackstarting point) and an OUT point (playback ending point). Accordingly,the PlayList is configured with one or multiple PlayItems, as shown inFIG. 2.

In FIG. 2, the first PlayList illustrated on the far left side isconfigured of two PlayItems, and the front half portion and the latterhalf portion of the AV stream included in the first Clip shown on theleft side of the diagram are each referenced by the two PlayItems. Also,the second PlayList illustrated the second from the left is configuredof one PlayItem, and the entire AV stream included in the second Clipshown on the right side of the diagram is referenced by the PlayItem.Further, the third PlayList illustrated the third from the left isconfigured of two PlayItems, and the predetermined portion of the AVstream included in the first Clip shown on the left side of the diagramand the predetermined portion of the AV stream included in the secondClip, shown on the right side of the diagram, are each referenced by thetwo PlayItems.

A navigation program is program for the controller 21 to execute afunction for controlling the order of PlayList playback or interactiveplayback of the PlayLists. Also, the navigation program has functionsfor displaying a menu screen for the user to specify execution ofvarious types of playback, and so forth. This navigation program iswritten in a programming language such as Java (registered trademark) orthe like for example, and is recorded on a recording medium such as anoptical disk 11 or the like. For example, if the navigation program isexecuted by the controller 21 to specify the first PlayItem included inthe first PlayList shown on the far left side of FIG. 2 as informationshowing the playback position at that time, the front half of the AVstream included in the first Clip shown on the left side, which isreferenced by the PlayItem, is played back.

Also, the PlayList described using FIG. 2 can also be configured toinclude information for a Sub path specified using a Sub Play Item suchas that shown in FIG. 3, along with a Main Path specified by thePlayItem. To define the SubPlayItem for example, an independent datastream not multiplexed on a Clip specified by the PlayItem (for example,an MPEG2 transport stream) can be synchronized with the AV streamplayback and thus played back.

For example, by corresponding the Clip AV stream of the Main Pathspecified by the PlayItem with preparing the SubPlayItem specifying thesubtitle-related information configured with a text subtitle file and afont file necessary for rendering, and the playback segment of thesubtitle-related information, the subtitles corresponding to the datawritten in the text subtitle file can be displayed on a display devicewith a display font based on the font style data written in the fontfile, simultaneous the Clip AV stream being played back. In other words,by specifying a file with the SubPlayItem which is a file separate fromthe Clip AV stream file of the Main Path including moving image data oraudio data, text data with a relatively small capacity can be preloadedon the buffer at the time of the playback starting (at time of diskinsertion), for example. Accordingly, even if the streaming files thatcan be read in at one time are limited to two, for example, to ensurecontinuous playback of the disk, one streaming file does not need to beassigned to a subtitle requiring playback synchronous with moving imagedata and the like. Therefore, playback can be continuous, even if afirst file stores moving image data and first audio data, a second filestores second audio data, and a third file stores the subtitles, forexample, whereby the stream is stored in three files. Thus, as is clearby the above, with a preloaded configuration, continuity can be secured,and playback can be made with a higher degree of freedom.

The subtitle-related information configured by the text subtitle fileand the font file required for rendering, and the SubPlayItem can berecorded in advance on the optical disk 11, or can be downloaded from aserver 3 via a network 2, or alternatively can be obtained by using aremovable media (for example, a removable media 28 to be describedlater).

The description will now return again to FIG. 1.

The memory 23 has recorded data and so forth necessary for when thecontroller 21 executes various processing, as appropriate. The localstorage 24 is configured with an HDD (Hard Disk Drive) or the like, forexample.

An Internet interface 25 is connected to the network 2 with a wire orwirelessly, performs communication with the server 3 via the network 2according to the control from the controller 21, and supplies the datadownloaded from the server 3 to the local storage 24. The data updatingthe data described using FIG. 2, which is recorded on the optical disk11 mounted on the playback device 1 at that time, is downloaded ascontent from the server 3, for example. The local storage 24 can recordthe content downloaded from the server 3 via the network 2.

The decoder 26 decodes the AV stream supplied from the optical diskdrive 22 or the local storage 24 or the text data, and outputs theobtained video signal and audio signal to an external display device.Content recorded on the optical disk 11 for example is output (displayof moving images, output of audio) to the display device based on thesignals decoded by the decoder 26.

The operation input unit 29 is configured with an input device such as abutton, key, touch panel, jog dial, mouse and so forth, and a receivingunit for receiving signals such as infrared rays sent from apredetermined remote commander, obtains operation input from a user, andsupplies this to the controller 21.

Also, the controller 21 is connected to a drive 27 as needed, whereuponsuch drive 27 is mounted a removable media 28 such as, for example, amagnetic disk (including a flexible disk), an optical disk (includingCD-ROM (Compact Disk-Read Only Memory) or a DVD), an optical magneticdisk (including an MD (registered trademark) (Mini-Disk)), orsemiconductor memory.

Next, a method for playing back the data recorded on the optical disk 11mounted on the playback device 1 or the data recorded on the localstorage 24 will be described.

The playback device 1 has a local storage 24 such as an HDD (Hard DiskDrive) provided internally. The playback device 1 is connected withwires or wirelessly to the network 2, and can record the contentdownloaded from the server 3 via the network 2 to the local storage 24.The data updating the content such as movies recorded on the opticaldisk 11 mounted on the playback device 1 at that time can be downloadedfrom the server 3, for example.

The controller 21 associates the content recorded on the optical disk 11and the content recorded on the local storage 24 and executes contentplayback processing, when playback of the contents recorded on theoptical disc 11 is instructed from the operation input unit 29 while thedownloaded content is in a state of being recorded in the local storage24.

FIG. 4 is a block diagram illustrating a function configuration exampleof the controller 21 in FIG. 1.

Each configuration in FIG. 4 is realized by a previously preparedcontrol program being executed by the controller 21, or a navigationprogram recorded on an optical disk 11 being executed by the controller21.

A menu screen display control unit 31 displays a menu screen including abutton to be operated by a user when selecting audio content or subtitlelanguage or image angle recorded on the optical disk 11, or a button tobe operated by a user when selecting an update file to be downloaded, onan external display device.

An operating input obtaining unit 32 obtains signals showing operationinput by the user which is input from the operation input unit 29, andthe signal showing operation input from the user is output in positionscorresponding to the menu screen display control unit 31, data acquiringunit 33, or playback control unit 37.

The data acquiring unit 33 controls the communication performed with theInternet interface 25 in FIG. 1 or the sending/receiving of informationwith the removable media 28 by the drive 27. For example, the dataacquiring unit 33 downloads and obtains an update file specified by theuser from the server 3, and outputs the obtained file to a local storagedirectory managing unit 34.

The local storage directory managing unit 34 manages a directory for thelocal storage 24, and controls writing in data as to the local storage24 and readout of data from the local storage 24. For example, aPlayList read out from the local storage 24 by the control of the localstorage directory managing unit 34 is output to the memory 23, and theaudio data or moving image data from the AV stream or text data from atext subtitle file read out from the local storage 24 is output to thedecode 26. Also, the local storage directory managing unit 34 outputsinformation relating to a file system in the local storage 24 to a filesystem merging processing unit 36 when the file system of the opticaldisk 11 and the file system of the local storage 24 is merged by thefile system merging processing unit 36.

An optical directory managing unit 35 manages a directory for theoptical disk 11 and controls the readout of data from the optical disk11. A Studio_id and a Content_id where are identifying information areset in the optical disk 11, and the Studio_id and Content_id read outfrom the optical disk 11 by the control of the optical disk directorymanaging unit 35 are output to the data acquiring unit 33 and the localstorage directory managing unit 34. Also, the PlayList read out from theoptical disk 11 by the control of the optical disk directory managingunit 35 is output to the memory 23, and the audio data and moving imagedata of the AV stream and the text data of the text subtitle file readout from the optical disk 11 are output to the decoder 26. Also, theoptical disk directory managing unit 35 outputs the information relatingto the file system of the optical disk 11 to the file system mergingprocessing unit 36, when the file system of the optical disk 11 and thefile system of the local storage 24 are merged by the file systemmerging processing unit 36 as described later.

The file system merging processing unit 36 merges the file system of theoptical disk 11 supplied from the optical disk directory managing unit35 and the file system of the local storage 24 supplied from the localstorage directory managing unit 34 to generate one virtual file system.The file system merging processing unit 36 outputs the virtual filesystem generated by the merging to the playback control unit 37.Hereafter, the one file system generated by merging with the file systemmerging processing unit 36 according to the first embodiment will becalled the first virtual file system, as appropriate.

The playback control unit 37 executes a navigation program specified bythe first virtual file system supplied from the file system mergingprocessing unit 36 to control content playback. Specifically, theplayback control unit 37 is supplied to the memory 23, and referencingthe recorded PlayList and controlling the local storage directorymanaging unit 34 or the optical disk directory managing unit 35, theaudio data and moving image data in the AV stream recorded on theoptical disk 11 or local storage 24 and text data in the text subtitlefile is read out as needed, and controlling the decoder 26 in FIG. 1,the audio data and moving image data in the AV stream recorded on theoptical disk 11 or local storage 24 and text data in the text subtitlefile as needed are decoded (played back).

Here the merging of the file system of the optical disk 11 and the filesystem recorded on the local storage 24 by downloading from the server 3and so forth by the file system merging processing unit 36 will bedescribed. For example this merging is performed when playback of thecontent recorded on the optical disk 11 is instructed.

FIG. 5 is a diagram showing an example of a file system of the opticaldisk 11 (left side) and a file system of the local storage 24 (rightside). As shown in the diagram, each file system has a directoryconfiguration.

A folder which is set with the name “BDMV” is prepared under “root” ofthe optical disk 11, and a file which is set with the name “info.bdmv”and a file which is set with the name “Navigation.class” are stored inthis folder. Hereafter, these files will be called the info.bdmv fileand the Navigation.class file, respectively, as appropriate. Other filesand folders also similarly are called by the form with “file” added to“file name” and “folder” added to “folder name”.

A Studio_id which is identifying information of the creator of theoptical disk 11 and a Content_id which is identifying information of thecontent are written in the info.bdmv file.

In other words, content recorded onto the optical disk 11 is identifiedwith the Studio_id and Content_id, out of all the contents flowingthrough. With the example in FIG. 5, the Studio_id is “xxx” and theContent_id is “yyy”. Note that Studio_id and Content_id can also be usedfor identifying an update file to be downloaded.

The Navigation.class file is a navigation program written with apredetermined program language.

A folder which is set with the name “PLAYLIST” (PLAYLIST folder), afolder which is set with the name “CLIPINF” (CLIPINF folder), and afolder which is set with the name “STREAM” (STREAM folder) are stored inthe BDMV folder.

In FIG. 5, a file which is set with the name “11111.mpls” and a filewhich is set with the name “22222.mpls” are stored in the PLAYLISTfolder. These files are the PlayList whereby the playback segment of theAV stream file and so forth are shown with a time stamp.

A file which is set with the name “01000.clpi” and a file which is setwith the name “02000.clpi” are stored in the CLIPINF folder. These filesare the Clip Information whereby the address information of the AVstream file or the subtitle-related information is correlated with thetime stamp.

A file which is set with the name “01000.m2ts” and a file which is setwith the name “02000.m2ts” are stored in the STREAM folder. These filesare the AV stream or the subtitled related information or the like.

On the other hand, a folder which is set with the name “xxx-yyy” isstored under “root” in the local storage 24. The folder name “xxx-yyy”indicates that the data stored therein is data corresponding to thecontent identified by the Studio_id “xxx” and Content_id “yyy”, which isstored on the optical disk 11. The xxx-yyy folder is created when theoptical disk 11 having the Studio_id “xxx” and Content_id “yyy” ismounted on the playback device 1 and the update file (each file storedin the xxx-yyy folder) is downloaded.

An info.bdmv file and a Navigation.class file are stored within thexxx-yyy folder. This info.bdmv file is the same as the info.bdmv file onthe optical disk 11, and the Navigation.class file is an updated file ofthe Navigation.class file on the optical disk 11. In other words, theNavigation.class file of the local storage 24 is a file to write anupgraded version of the navigation program, as compared to that which isrecorded on the optical disk 11.

Further, a PLAYLIST folder, a CLIPINF folder, and a STREAM folder arestored within the xxx-yyy folder.

In FIG. 5, a file which is set with the name “11111.mpls” and a filewhich is set with the name “22222.mpls” are stored in the PLAYLISTfolder of the local storage 24, and of these the file which is set withthe name “22222.mpls” serves as an updated file of the file with thesame name on the optical disk 11. For example, the file which is setwith the name “22222.mpls” of the local storage 24 indicates thedownloaded Update PlayList, and the data attached to the PlayList by theSubPlayItem is written into this file.

A file which is set with the name “04000.clpi” is stored in the CLIPINFfolder on the local storage 24, along with a file which is set with thename “01000.clpi” and a file which is set with the name “02000.clpi”which are also recorded on the optical disk 11. In other words, the filewhich is set with the name “04000.clpi” is a newly obtained file bydownloading.

A file which is set with the name “04000.m2ts” is stored in the STREAMfolder of the local storage 24. This file is a newly obtained file bydownloading.

Note that similarly, in the example in FIG. 5, a folder which is setwith the name “xxx-aaa” and a folder which is set with the name“yyy-bbb” are stored under “root” on the local storage 24. These arecreated at the time the optical disk identified by Studio_id “xxx” andContent_id “aaa” and the optical disk identified by Studio_id “yyy” andContent_id “bbb” are mounted on the playback device 1, and files arestored which correspond to each content.

When there is such a file system of the optical disk 11 and file systemof the local storage 24, the file system merging processing unit 36 ofthe controller 21 merges the file system of the optical disk 11 and thefile system of the local storage 24 on the memory 23, and creates afirst virtual file system.

Specifically, when files with the same name are in both the optical disk11 and the local storage 24, the file system merging processing unit 36performs merging based on the time stamp (create date and time) writteninto each file, or version thereof, so that the file obtained by thedownload serves as the file to be referenced at time of contentplayback. Also, the file system merging processing unit 36 performsmerging so that the file which is not on the optical disk 11 but is inthe local storage 24 serves as the file to be referenced at time ofcontent playback.

FIG. 6 is a diagram showing an example of a first virtual file systemobtained by the two file systems in FIG. 5.

In FIG. 6, of the files recorded on the optical disk 11, theNavigation.class file and the file which is set with the name“22222.mpls” are updated (replaced) by the downloaded file. Also, thefile which is set with the name “04000.clpi” and the file with is setwith the name “04000.m2ts” which are not recorded onto the optical disk11 are added.

In other words, when an updated navigation program or PlayList is in thedownloaded file, the file with the same name on the optical disk 11 isupdated (replaced) by that file. Also, when a Clip file not on theoptical disk 11 (the Clip Information file and the AV stream file) isdownloaded, this file is added to the file system.

Through the first virtual file system thus created, access to the AVstream based on the navigation program is performed (access is notperformed directly to the optical disk 11 or the local storage 24).

Therefore, the data recorded in advance on the optical disk 11 and thedata newly downloaded or copied and recorded on the local storage 24 areprocessed without being distinguished from one another, with theprocessing of the newly downloaded or copied new navigation program. Asshown in FIG. 7, when the subtitle-related information for displayingthe subtitles corresponding to a predetermined segment of AV stream isconfigured with text subtitle data configuring the text subtitle filecorresponding to multiple language subtitles and a font file, thesubtitle data in the language desired by the user, out of the multiplelanguage subtitles which can be displayed by the subtitle-relatedinformation stored in the optical disk 11, and the subtitle-relatedinformation newly downloaded or copied and recorded onto the localstorage 24, based on user operational input, is correlated to the AVstream recorded in advance on the optical disk 11, is processed, anddisplayed.

On the other hand, the selling side of the optical disk (merchant,creator) can sell the optical disk 11 whereupon a movie is recorded in astate of being capable of displaying English subtitles only, withsubtitle information for Arabic being provided via the network 2afterwards, for example. In other words, the selling side of the opticaldisk can sell the disk sooner without translating the disk into multiplelanguages at one time, and can provide additional subtitle-relatedinformation corresponding to other languages as needed. Also, theoptical disk can be sold first in regions corresponding to commonlanguages, and after translating processing has been completed for otherlanguages, the sales regions for the optical disk can be added, and atthe same time a downloading service for the text subtitle files for thecorresponding languages can be started, and so forth.

In order to have subtitle data capable of displaying corresponding tothe AV stream recorded in advance on the optical disk 11, the sellingside of the optical disk (merchant, creator) needs to distribute atleast a new updated playlist file and a text subtitle file, andadditionally can distribute a font file for defining the display formatof the subtitles corresponding to the text data written in the textsubtitle file.

FIG. 8 shows an archive of such data to be additionally distributed(corresponding to the data stored on the local storage 24).

The data to be additionally distributed includes a playlist file(PlayList_file), 8-bit number information showing the number of the textsubtitle file (number_of_TextSubTitle), and a text subtitle file(text_subtitle_file) corresponding to the above-described text subtitlefile, and further, in some cases a font file (font_file) may beincluded.

FIG. 9 is a diagram showing a syntax of a SubPlayItem.

The 8-bit field of an Ref_to_STC_id specifies an identifier of an STCsequence referenced by the Clip. A SubPlayItem_IN_time specifies theplayback start time of the SubPlayItem. A SubPlayItem_OUT_time specifiesthe playback end time of the SubPlayItem. In other words, the playbacksegment of the SubPlayItem can be specified with the SubPlayItem_IN_timeand the SubPlayItem_OUT_time. Note that time information written in theSubPlayItem_IN_time and the SubPlayItem_OUT_time is expressed based on a45 kHz clock used with the STC.

The 8-bit field of a number_of_ClipTextSubtitle specifies the totalcount of subtitle text to be defined in the SubPlayItem. The 8-bit fieldof a language_id specifies an identifier for the language to be used forthe subtitles. The data in the language_id field follows ISO/IEC 639-1regulations. The 8-bit field of a character_code_id specifies anidentifier for a coding method for character data. The 8-bit field ofthe font_format_id specifies an identifier of a font format.

The 16-bit field of a font_file_path_length specifies the number ofbytes for a font file path name written in the font_file_path. 0 can bespecified in this field as the number of bytes for the font_file_path.If 0 is specified, processing is performed as if the internal fontstored in advance in the playback device 1 has been specified. Thefont_file_path specifies the path name of the font file to be used fordrawing the subtitle data. If an empty character string is specified inthe font_file_path field, processing is performed as if the internalfont stored in advance in the playback device 1 has been specified. Thefield values of the font_file_path are to be encoded by ISO/IEC 646.

The 16-bit field of a subtitle_file_path_length specifies the number ofbytes of the path name for the text subtitle file written in thesubtitle_file_path. The subtitle_file_path specifies the path name ofthe text subtitle file. The field values of the subtitle_file_path areto be encoded by ISO/IEC 646.

The 16-bit field of a comment length specifies the number of bytes ofinformation written in the comment. Comments relating to the textsubtitles are written into Comment. Note that the comments written inComment are to be written using a character collection ISO/IEC 646.

With the present embodiment, a text subtitle file (thetext_subtitle_file in FIG. 8 is a text subtitle file) is configured as astreaming file as shown in FIG. 10. Hereafter, a text subtitle file thusconfigured as a streaming file will be called a text subtitle streamfile (Text_Subtitle_Stream file).

As shown in the topmost diagram in FIG. 10, the text subtitle streamfile takes the form of a transport stream configured of multipletransport packets (a packet described as a TP in FIG. 10, thushereafter, this will be called TP along with the writing thereof) at thetime of transmission.

Note that in the example in FIG. 10, the transport stream is configuredonly with TP having the same PID which is called 0x1800. In other words,in the example in FIG. 10, the transport stream is configured only withTP corresponding to a portion of the text subtitle stream file. That isto say, in the example of FIG. 10, the transport stream is configuredonly with text subtitle stream files.

Such a transport stream is converted to a stream with a PES (PacketizedElementary Stream) packet as a unit, at the time of or prior to dataprocessing (for example at the time of recording processing or at thetime of playback processing), as shown in diagram second from the top inFIG. 10. That is to say, the diagram second from the top in FIG. 10shows a configuration example of a text subtitle stream file which usesa PES Packet as the unit thereof. The PES Packet at the front of theline of the multiple PES packets configuring the text subtitle streamfile is called a Dialog Style Segment. This Dialog Style Segment is aPES packet corresponding to attribute data to be described later. Also,each of the multiple PES packets to follow the Dialog Style Segment areeach called a Dialog Presentation Segment. These Dialog PresentationSegments are PES packets corresponding to character objects to bedescribed later.

FIG. 11 is a diagram showing a syntax for such a text subtitle stream(Text_subtitle_stream) file.

In FIG. 11, the 16-bit field of number_of_dialog_presentation_segmentsspecifies the number of Dialog Presentation Segments which follow theDialog Style Segments. That is to say, the text subtitle stream(Text_subtitle_stream) file is configured with the Dialog Style Segmentdisposed in front thereof, and the number of Dialog PresentationSegments specified by the number_of_dialog_presentation_segments aredisposed thereafter.

FIG. 12 is a diagram showing a general syntax for one Segment.

As is shown is FIG. 12, one Segment is configured with asegment_descriptor and a segment_data.

FIG. 13 is a diagram showing the syntax for the segment_descriptor.

The 8-bit field of segment_type specifies the type of segment.Specifically, one of the predetermined segment types shown in FIG. 14 isspecified with a value (the value in the same row in FIG. 14)corresponding to the segment_type. That is to say, when the segment typeis Dialog Style Segment, then 0x81 is set for segment_type. Also, whenthe segment type is Dialog Presentation Segment, 8x82 is set forsegment_type. Note that 0x00 through 0x13, 0x19 through 0x7F, and 0x83through 0xFF are prepared as reserves. Also, 0x14 through 0x18 and 0x80are prepared as valued to specify segments for graphic streams.

The 16-bit field of segment_length specifies the number bytes of thissegment.

Of the segments having such as syntax as shown in FIG. 12 through FIG.14, the Dialog Style Segment syntax is as shown in FIG. 15.

That is to say, the segment_data in FIG. 12 becomes a dialog_style_setwith the Dialog Style Segment in FIG. 15.

FIG. 16 and FIG. 17 show the syntax of this dialog_style_set. Detailswill be described later, but with this syntax, one of the features ofthe present invention, namely, “to add an outline to a character objectused for text to configure subtitles and the like”, can be realized.

In FIG. 16, the 1-bit field of player_style_flag specifies whether ornot permission is granted to change the dialog_style_set to theindividual style of the user. That is to say, as shown in FIG. 18, whenpermission is not granted (is prohibited), 0b is specified as theplayer_style_flag. Conversely, when permission is granted, 1b isspecified as the player_style_flag.

The 8-bit field of number_of_region_styles specifies the number ofregion_styles (to be described later) used with this dialog_style_set.The 8-bit field of number_of_user_styles specifies the number ofuser_styles (to be described later) used with this dialog_style_set.

The 8-bit field of region_style_id specifies an identifier for an objectregion_style. The region shows the rendering region.

The 16-bit field of region_horizontal_position specifies the horizontaldirection coordinates of the object region. The 16-bit field of theregion_vertical_position specifies the vertical coordinates of theobject region. The 16-bit field of region_width specifies the width ofthe object region. The 16-bit field of region_height specifies theheight of the object region. The 8-bit field ofregion_bg_palette_entry_id_ref specifies the background color of theobject region.

The 16-bit field of text_box_horizontal_position specifies thehorizontal direction coordinates of a text box (an area wherein text isdisplayed to configure the subtitles) within the object region. The16-bit field of text_box_vertical_position specifies the verticaldirection coordinates of a text box. The 16-bit field of text_box_widthspecifies the width of the text box. The 16-bit field of text_box_heightspecifies the height of the text box.

The 8-bit field of text_flow specifies the display direction of textdisplayed in a text box within an object region. Specifically, one ofthe display directions shown in FIG. 19 is specified with a value (thevalue in the same row in FIG. 19) corresponding to the text_flow. Thatis to say, when the display direction is in a horizontal directionfacing from left to right, 1 is specified as the text flow. When thedisplay direction is in a horizontal direction facing from right toleft, 2 is specified as the text_flow. When the display direction is ina vertical direction facing from top to bottom, 3 is specified as thetext_flow. Note that as reserve values, values other than 0 and 1through 3 are prepared.

The 8-bit field of text_horizontal_alignment specifies the text to bedisplayed in the text box of the object region as right-justified,left-justified, or centered (centered in the horizontal direction).Specifically, a value such as that shown in FIG. 20 is specified for thetext_horizontal_alignment. That is to say, in the case of beingleft-justified, 1 is specified as the text_horizontal_alignment. In thecase of being centered, 2 is specified as the text_horizontal_alignment.In the case of being right-justified, 3 is specified as thetext_horizontal_alignment. Note that as reserve values, values otherthan 0 and 1 through 3 are prepared.

The 8-bit field of text_vertical_alignment specifies the text to bedisplayed in the text box of the object region as top-justified,bottom-justified, or centered (centered in the vertical direction).Specifically, a value such as that shown in FIG. 21 is specified for thetext_vertical_alignment. That is to say, in the case of beingtop-justified, 1 is specified as the text_vertical_alignment. In thecase of being centered, 2 is specified as the text_vertical_alignment.In the case of being bottom-justified, 3 is specified as thetext_vertical_alignment. Note that as reserve values, values other than0 and 1 through 3 are prepared.

The 8-bit field of line-space specifies spacing of a base line in theobject region.

The 8-bit field of font_id_ref specifies the font of the text to bedisplayed in the text box of the object region.

The 8-bit field of font_style specifies the font style of the text to bedisplayed in the text box of the object region. Specifically, a valuesuch as that shown in FIG. 22 is specified for font_style. That is tosay, when the font style is Normal (a font style set in advance as thestandard), 0x00 is specified for font_style. When the font style is Bold(bold type), 0x01 is specified for font_style. When the font style isItalic (italic type), 0x02 is specified for font_style. When the fontstyle is Bold and Italic (bold and italic type), 0x03 is specified forfont_style. When the font style is Outline-bordered (outlined type),0x04 is specified for font_style. When the font style is Bold andOutline-bordered (bold and outlined type), 0x05 is specified forfont_style. When the font style is Italic and Outline-bordered (italicand outlined type), 0x06 is specified for font_style. When the fontstyle is Bold, Italic and Outline-bordered (bold, italic, and outlinedtype), 0x07 is specified for font_style.

The font styles specified by 0x04 through 0x07 of the above-describedfont styles are necessary font styles for realizing one of the featuresof the present invention, namely, “to add an outline (border) to acharacter object used as text to configure subtitles and the like”. Thatis to say, in order to realize a feature of the present invention “toadd an outline (border) to a character object used as text to configuresubtitles and the like”, the value for font_style needs to be specifiedas one of 0x04 through 0x07.

Hereafter, the font styles specified as 0x00 through 0x03 for font_stylewill be collectively called normal font style. Also, the font stylesspecified as 0x04 through 0x07 for font_style will be collectivelycalled outlined styles.

The 8-bit field of font-size specifies the size of the text font to bedisplayed in the text box in the object region. The field offont_palette_entry_id_ref specifies the color of the this font.

With the syntax of dialog_style_set in the example in FIG. 16 and FIG.17, when one of 0x04 through 0x07 is specified as font_style, that is tosay, when an outline style is specified in order to realize one of thefeatures of the present invention, namely, “to add an outline (border)to a character object used as text to configure subtitles and the like”,an 8-bit field called ouline_palette_entry_id_ref and an 8-bit fieldcalled outline_size are specified.

The outline_palette_entry_id_ref specifies the color for the outline(the border of the text) when the text is to be displayed with a fontstyle having an outline. The outline_size specifies the size (width) ofthe outline. Note that the color or size of the outline will bedescribed later with reference to FIG. 28 through FIG. 30.

Note that with inline_style, in order to change the font_style partiallyto an outline style, it is necessary to use a table adding on the grayeditems in FIG. 23 as to a Table 9-59 (Data_type definition) of aconventional Blu-Ray Disc (registered trademark) Read-Only FormatVersion 0.89r3, that is to say, to use a table wherein Data_Length ischanged to 3 in the items (rows) wherein Data_type is 0x033, and alsooutline_palette_entry_id_ref and outline_size are newly added toinline_style_values( ) or text_string.

The syntax of the change settings (hereafter, user_changeable_Style_set)of user_style as to the syntax of the region_style described abovewithin the dialog_style_set in the example in FIG. 16 and FIG. 17 isshown in FIG. 17.

The 8-bit field of user_style_id in FIG. 17 specifies an identifier forUser_control_style of the object.

The 1-bit field of region_horizontal_position_direction specifies themovement direction of the region_horizontal_position. Specifically, whenthe movement direction is in the right direction, 0 is specified to theregion_horizontal_position_direction and when the movement direction isin the left direction, 1 is specified thereto. The 15-bit field ofregion_horizontal_position_delta specifies the movement amount in ahorizontal direction of the region_horizontal_position.

The 1-bit field of region_vertical_position_direction specifies theadvancing (movement) direction of the region_vertical_position.Specifically, when the movement direction is in the lower direction, 0is specified to the region_vertical_position_direction and when themovement direction is in the upper direction, 1 is specified thereto.The 15-bit field of region_vertical_position_delta specifies themovement amount in a vertical direction of the region_vertical_position.

The 1-bit field of font_size_inc_dec specifies the direction of changeof the font size, that is to say, specifies whether the font will belarger or smaller after changing. Specifically, when the size is to belarger, 0b is specified to the font_size_inc_dec, and when the size isto be smaller, 1b is specified thereto. The 7-bit field offont_size_delta specifies the amount of change of the font size.

The 1-bit field of text_box_horizontal_position_direction specifies themovement direction in a horizontal direction of the text box.Specifically, when the movement direction is in the right direction, 0is specified to the text_box_horizontal_position_direction and when themovement direction is in the left direction, 1 is specified thereto. The15-bit field of text_box_horizontal_position_delta specifies themovement amount in a horizontal direction of the text box.

The 1-bit field of text_box_vertical_position_direction specifies themovement direction in a vertical direction of the text box.Specifically, when the movement direction is in the lower direction, 0is specified to the text_box_vertical_position_direction and when themovement direction is in the upper direction, 1 is specified thereto.The 15-bit field of text_box_vertical_position_delta specifies themovement amount in a horizontal direction of the text box.

The 1-bit field of text_box_width_inc_dec specifies the direction ofchange of the text box width, that is to say, specifies whether the textbox width will be wider or narrower after changing. Specifically, whenthe width is to be wider, 0b is specified to the text_box_width_inc_dec,and when the size is to be narrower, 1b is specified thereto. The 15-bitfield of text_box_width_delta specifies the amount of change of the textbox width.

The 1-bit field of text_box_height_inc_dec specifies the direction ofchange of the text box height, that is to say, specifies whether thetext box height will be taller or shorter after changing. Specifically,when the height is to be taller, 0b is specified to thetext_box_height_inc_dec, and when the height is to be shorter, 1b isspecified thereto. The 15-bit field of text_box_height_delta specifiesthe amount of change of the text box height.

The 1-bit field of line_space_inc_dec specifies the direction of changeof the line_space, that is to say, specifies whether the line_space willincrease or decrease after changing. Specifically, when the line_spaceis to increase, 0b is specified to the line_space_inc_dec, and when theline_space is to decrease, 1b is specified thereto. The 7-bit field ofline_space_delta specifies the amount of change of the line_space.

A palette( ) is not shown in the diagram but has the following fields.That is to say, the palette( ) is configured from fields called length,which specifies the length of the palette ( ), palette_entry_id, whichspecifies an identifier for a specific color in the palette, Y_value,which specifies the value of Y within (Y, Cb, Cr), Cb_value, whichspecifies the value of Cb within (Y, Cb, Cr), Cr_value, which specifiesthe value of Cr within (Y, Cb, Cr), and T_value, which specifies degreeof transparency.

Next, FIG. 24 is a diagram showing a virtual recording region of thelocal storage 24.

As described using FIG. 4, various types of information which has beendownloaded or copied is recorded onto the local storage 24 in a fileformat described using FIG. 5. In order to record these files, the localstorage 24 can be configured with a virtual storing region so as toinclude a navigation program storing unit 51 which is a region wherein adownloaded navigation program is stored, a play list recording unit 52which is a region wherein a downloaded play list is stored, a textsubtitle file storing unit 53 which is a region wherein a downloadedtext subtitle file is stored, and a font file storing unit 54 which is aregion wherein a downloaded font file is stored. The data files storedin the navigation program storing unit 51 and play list storing unit 52are read out based on the control by the local storage directorymanaging unit 34 described using FIG. 4 and supplied to the memory 23,and the data files stored in the text subtitle file storage unit 53 andfont file storage unit 54 are read out based on the control by the localstorage directory managing unit 34 described using FIG. 4 and suppliedto the decoder 26.

The storing regions in each of the navigation program storing unit 51,play list storing unit 52, text subtitle file storing unit 53, and fontfile storing unit 54 of the local storage 24 shown in FIG. 24 arevirtual, and so the storing region of the local storage 24 does not needto be physically divided by stored information type as shown in FIG. 24.

Based on the control of the controller 21, the data read out from theoptical disk 11 or local storage 24 is demodulated by an unshowndemodulator and an ECC decoder, error correction is performed, and thedata is supplied to the decoder 26. FIG. 25 is a block diagram fordescribing the detailed configuration of the decoder 26.

A control unit 81, a disk data acquiring unit 82, buffers 83 and 84, aPID (packet ID) filter 85, an audio decoder 86, a MPEG (Moving PictureExperts Group) a video decoder 87, a video plane processing unit 88, aGUI (Graphic User Interface) data decoder 89, a GUI graphics planeprocessing unit 90, a storage data acquiring unit 91, a text subtitleprocessing unit 92, a subtitle graphics plane processing unit 93, and asynthesizing processing unit 94 are provided on the decoder 26.

The control unit 81 controls processing in the various parts of thedecoder 26, based on the control of the playback control unit 37. Thedisk data acquiring unit 82 obtains the data supplied to the decoder 26of the data read out from the optical disk 11, supplies a multiplexedstream such as an AV stream specified by a PlayItem described with FIG.7 to the buffer 83 which is a lead buffer for data specified by thePlayItem configuring the main path, and supplies the text subtitle fileor font file data specified (font file data is sometimes not specified)by a SubPlayItem to the buffer 84 which is a lead buffer for dataspecified by the SubPlayItem configuring the sub path.

The stream data read from the buffer 83 is output to the PID filter 55in a later step, with a predetermined timing. This PID filter 85allocates and outputs the input multiplexed stream to the audio decoder86, MPEG video decoder 87, or GUI data decoder 89 which are decoders foreach elementary streams in later steps, according to the PID. That is tosay, the PID filter 55 supplies the audio stream to the audio decoder86, supplies the video stream to the MPEG video decoder 87, and suppliesthe image data relating to the user interface to the GUI data decoder89.

The audio decoder 86 decodes the audio stream, and outputs the decodedaudio stream data. The MPEG video decoder 87 decodes the video stream,and outputs the decoded video data to the video plane processing unit88. The video plane processing unit 88 generates a video planecorresponding to an image (images making up a picture which is a movingimage) displayed on one page (or one frame), based on the decoded videodata, and outputs this to the synthesizing processing unit 94.

The GUI data decoder 89 decodes the interactive graphics stream, andsupplies the decoded GUI data to the GUI graphics plane processing unit90. The GUI graphics plane processing unit 90 generates a graphics planecorresponding to the GUI displayed on one screen, and outputs this tothe synthesizing processing unit 94.

The storage data acquiring unit 91 obtains the data supplied to thedecoder 26 (that is to say, text subtitle file or font file data) of thedata read out from the local storage 24, and supplies this to the textsubtitle processing 92. The text subtitle processing unit 92 decodes thetext data supplied from the storage data acquiring unit 91 or read outfrom the buffer 84, according to the control of the control unit 81,converts (rasterizes) this to raster data (character object data) suchas a bitmap, based on predetermined font style data, and supplies thisto the subtitle graphics plane processing unit 93. Details of the textsubtitle processing unit 92 will be described later using FIG. 26. Thesubtitle graphics plane processing unit 93 generates a subtitle graphicsplane corresponding to subtitles to be displayed on one page (or oneframe), based on the decoded and rendered text data, and outputs this tothe synthesizing processing unit 94.

The synthesizing processing unit 94 synthesizes a video plane suppliedfrom the video plane processing unit 88, a graphics plane correspondingto the GUI supplied from the GUI graphics plane processing unit 90, anda subtitle graphics plane supplied from the subtitle graphics planeprocessing unit 93, and outputs this as a video signal.

FIG. 26 is a block diagram for describing the detailed configuration ofthe text subtitle processing unit 92.

The text data decoder 121 decodes the data of the text subtitle file,supplies the character objects to the character object buffer 122, andsupplies the attribute data to the attribute data buffer 123.

The text subtitle file mentioned here indicates a text subtitle streamfile described above and shown in FIG. 10, for example. Accordingly, acharacter object indicates the above-described Dialog presentationSegment and so forth in FIG. 10, for example. Also, the attribute datamentioned here indicates the above-described Dialog Style Segment and soforth in FIG. 10, specifically for example, the font_style specifying anoutline style or a normal font style, the outline_palette_entry_id_refspecifying the outline color of a font style with an outline, and theoutline_size specifying the size (width) of the outline of a font stylehaving an outline, and so forth are indicated.

The attribute data stored in the attribute data buffer 123 is changedaccording to the control of the control unit 91, based on the operationinput of the user. For example, if a user commands a change to the fontsize or character color, the corresponding User_control_style( ) (FIG.17) out of the attribute data stored in the attribute data buffer 123 ischanged with the control of the control unit 81.

The font rasterizer 124 converts the character object read out from thecharacter object buffer 122 into raster data (character object data)such as a bitmap and outputs this to the subtitle graphics planeprocessing unit 93, based on the attribute specification read out fromthe attribute data buffer 123 and the font style data supplied from thebuffer 84 or the storage data acquiring unit 91. Further, based on theattributes read out from the attribute data buffer 123, the fontrasterizer 124 detects a character object to which a bookmark isattached, and using a bookmark buffer 125, does not perform duplicaterasterizing for the character object to which the same bookmark ID isattached. The details of the font rasterizer 124 will be described laterwith reference to FIG. 27.

The bookmark buffer 125 holds the raster data for the character objectto which the bookmark is attached by the processing of the fontrasterizer 124, and also the held raster data is read out by the fontrasterizer 124.

FIG. 27 is a block diagram for describing the detailed configuration ofthe font rasterizer 124.

The character object obtaining unit 151 obtains the character objectread out from the character object buffer 122 (FIG. 26), and suppliesthis to the bookmark detecting unit 152.

The bookmark detecting unit 152 detects whether or not the characterobject supplied from the character object obtaining unit 151 is alreadystored in the bookmark buffer 125 (FIG. 26) with a bookmark attached,that is to say, detects whether or not the character objects with thesame bookmark ID attached are already stored in the bookmark buffer 125.

Then, when the bookmark detecting unit 152 detects that characterobjects with the same bookmark ID attached are stored in the bookmarkbuffer 125, the character object to which the same bookmark ID isattached (already rasterized data) is obtained from the bookmark buffer125, and is output to the subtitle graphics plane processing unit 93(FIG. 25).

Conversely, when the bookmark detecting unit 152 detects that characterobject with the same bookmark ID has not yet been stored in the bookmarkbuffer 125, the character object supplied from the character objectobtaining unit 151 is supplied to the rasterizing unit 153 withoutchange.

Based on the attribute specification read out from the attribute databuffer 123 and the font style data of normal font style supplied fromthe normal font style obtaining unit 156 or the font style data of anoutline style supplied from the outline style processing unit 157, therasterizing unit 153 converts the character object supplied from thebookmark detecting unit 152 into raster data (character object data)such as a bitmap and outputs this to the subtitle graphics planeprocessing unit 93, as well as supplying this to the bookmark storingcontrol unit 154.

The synthesizing unit 164 provided on the rasterizing unit 153 will bedescribed later.

Also, details will be described later with reference to FIG. 28 throughFIG. 31, but the font style data of the outline style supplied from theoutline style processing unit 157 is font style data which has changed(processed) the color or size (width) of the outline as needed as to theoriginal font style data.

The bookmark storing control unit 154 determines whether or not a newbookmark is notated, based on the character object attribute datasupplied from the rasterizing unit 153, and if a new bookmark isnotated, control is performed to store the raster data in the bookmarkbuffer 125, and if a bookmark is not notated, the control thereof isprohibited.

The font style detecting unit 155 references the font_stylecorresponding to the attribute data stored in the attribute data buffer123, and detects the font style necessary for rasterizing the characterobject obtained from the character object obtaining unit 151. Then ifthe font style detecting unit 155 detects that the font style is anormal font style, the detection results are notified to the normal fontstyle obtaining unit 156. Conversely, if the font style detecting unit155 detects that the font style is an outline style, the detectionresults are notified to the outline style obtaining unit 161 of theoutline style processing unit 157.

The normal font style obtaining unit 156 obtains font style data of thenormal font style specified by the detection results of the font styledetecting unit 155 out of the font style data supplied from the buffer84 or storage data acquiring unit 91, and supplies this to therasterizing unit 153.

The outline style processing unit 157 obtains the font style specifiedby the detection results of the font style detecting unit 155 out of thefont style data supplied from the buffer 84 or storage data acquiringunit 91, that is to say, obtains font style data with an outline style.Further, the outline style processing unit 157 references theoutline_palette_entry_id_ref corresponding to the attribute data storedin the attribute data buffer 123, and updates the color of the outline.Also, the outline style processing unit 157 references the outline_sizecorresponding to the attribute data stored in the attribute data buffer123, and updates the size (width) of the outline. Then the outline styleprocessing unit 157 supplies the font style data wherein the outlinecolor or size (width) has been updated to the rasterizing unit 153 (ormore accurately, to the synthesizing unit 164 to be described later).

Here, an example of a method for changing the size (width) of theoutline will be described with referent to FIG. 28 through FIG. 31,before describing a detailed configuration example of the outline styleprocessing unit 157. It goes without saying that the changing method forthe size (width) of the outline is not limited to the following example.

The letter A is shown in FIG. 28 as an example of a character objectdata in a normal font style. Note that hereafter, the character objectdata A in a normal font style will be called character object data 171.

Also, the letter A is shown in FIG. 29 as an example of a characterobject data in an outline font style. Note that hereafter, the characterobject data A in an outline font style will be called character objectdata 181.

The character object data 181 is generated based on outline data. Theoutline data is one of the font style data whereby the shape of thecharacter is expressed with an outline (border). This outline data hasbeen used with an outline font. That is to say, an outline font is oneof a format of fonts used conventionally, and refers to a format whichholds outline data and performs lettering. The outline font has afeature of being better able to increase or decrease in size as comparedto a bitmap font (a format holding a bitmap).

FIG. 30 is a diagram to describe a conventional method of a changingmethod for changing the outline (border) width of the character objectdata 181.

As shown in FIG. 30, conventionally, an outline 181-L0 of the textobject data 181 has the width thereof expanded or contracted at anequivalent rate for both directions in the vertical direction of theoutline (with the example in FIG. 30, the left direction and rightdirection in the horizontal direction are also expanded), and as aresult, is changed such as that shown in outline 181-L1.

In other words, conventionally, the character object data 181 has thewidth of the outline made wider at an even rate for both verticaldirections as to the outline, and as a result, is changed to a characterobject data 182 such as that shown in FIG. 31.

When comparing this character object data 182 with the originalcharacter object data 181, it can be easily seen that there is a problemwith the conventional method, such that when the width of the outline ismade wider at an equivalent rate in both directions in the verticaldirection as to the outline, the area of the region of white color (theoutlined portion) surrounded by an outline is decreased by the sameamount, and in the worst case scenario the white region is erased (theoutlined portion is covered up).

Thus, to solve the problem of this conventional method, with the presentembodiment, the size (width) of the outline of the character object data181 can be changed by using a method such as that shown in FIG. 31. Thatis to say, FIG. 31 is a diagram describing an example of a changingmethod which can resolve the problem of a conventional method of achanging method for the size (width) of the outline. In other words,with the present embodiment, the method in FIG. 31 is applied to thesynthesizing unit 164 in the rasterizing unit 153 (FIG. 27).

Hereafter, the method in FIG. 31 will be further described. In otherwords, hereafter, the operation (processing) of the synthesizing unit164 will be described.

First, the synthesizing unit 164 generates character object data 181based on outline data. Next, the synthesizing unit 164 generatescharacter object data 182 whereby the width of the outline of thecharacter object data 181 has been changed at an equivalent rate forboth directions in the vertical direction of the outline, according to aconventional method described in FIG. 30.

Note that the synthesizing unit 164 uses font style data with an outlinesupplied from the outline style processing unit 157 for the purpose ofgenerating this character object data 182. However, the font style datawith an outline will be described later.

Next, the synthesizing unit 164 layers the character object data 181over the character object data 182 (executes synthesizing processing).As a result, if the outline of the character object data 181 is called acenter line, the character object data 183 having an outline wherebyonly the direction opposite (hereafter will be called the outsidedirection) from the direction facing the outlined portion (hereafterwill be called in inside direction) as to the center line has becomethicker, that is to say, the character object data 183 is generatedwhereby only the width of the outline is made thicker on the outer sidewithout changing the area of the outlined portion as to the characterobject data 181.

As described above, the synthesizing unit 164 uses the font style dataof an outline style supplied by the outline style processing unit 157for the purpose of generating the character object data 182. Also, thecharacter object data 182 has an outline whereof the width (both theinside direction and the outside direction) or color has been changed asto the outline of the character object data 181 generated by the outlinedata (the font style data of the outline style used in a conventionaloutline font). Accordingly, the outline style processing unit 157 needsto change the outline data necessary for generating the character objectdata 181 into the font style data necessary for generating the characterobject 182. Therefore, with the present embodiment, the outline styleprocessing unit 157 is configured as shown in FIG. 27. That is to say,with the example in FIG. 27, the outline style processing unit 157 isconfigured with an outline style obtaining unit 161, a color changingunit 162, and a width changing unit 163.

The outline style obtaining unit 161 obtains the font style specifiedwith the detecting results of the font style detecting unit 155 out ofthe font style data supplied from the buffer 84 or the storage dataacquiring unit 91, that is to say, obtains the font style data (outlinedata) of the outline style. The font style data of the obtained outlinestyle is provided to the color changing unit 162.

The color changing unit 162 references the outline_palette_entry_id_refcorresponding to the attribute data stored in the attribute data buffer123, and changes the color of the outline according to the font styledata of the outline style supplied from the outline style obtaining unit161. The font style data of the outline style whereof the outline coloris changed is supplied to the width changing unit 163 and thesynthesizing unit 164 of the rasterizing unit 153.

That is to say, in the example in FIG. 31 for example, based on the fontstyle data supplied from the color changing unit 162, the synthesizingunit 164 generates the character font data 181 having an outline of acolor corresponding to the font style data thereof.

The width changing unit 163 references the outline_size corresponding tothe attribute data stored in the attribute data buffer 123, and expandsor contracts the size (width) of the outline at an equivalent rate onthe outside direction and the inside direction for the font style dataof the outline style supplied from the color changing unit 162. The fontstyle data of the outline style whereof the size (width) of the outlinehas been changed in the outside direction and the inside direction issupplied from the width changing unit 163 to the synthesizing unit 164.

Then the synthesizing unit 164 executes processing according to theconventional method in FIG. 30 as described above, based on the fontstyle data supplied from the width changing unit 163. Specifically, forexample, when the character object data 181 in FIG. 31 is alreadygenerated, the synthesizing unit 164 generates the character object data182 having an outline with the width expanded or contracted at anequivalent rate in the outside direction and inside direction (and withthe color being changed) as to the width of the outline of the characterobject 181, based on the font style data supplied from the widthchanging unit 163.

Then, as described above, the synthesizing unit 164 generates characterobject data 183 having an outline with the width expanded or contractedonly for the outside direction (and with the color being changed) as tothe width of the outline of the character object 181, by synthesizingthe character object data 181 and the character object data 182.

Next, the playback processing of the controller 21 (FIG. 1) will bedescribed with reference to FIG. 32.

When playback of the content recorded on the optical disk 11 isspecified in the state wherein the downloaded update file stored in thelocal storage 24 as described above, the optical disk directory managingunit 35 reads out the Studio_id and Content_id from the optical disk 11in step S1, and outputs the read out Studio_id and Content_id to thelocal storage directory managing unit 34.

In step S2, the local storage directory managing unit 34 detects thefile system of the local storage 24 corresponding to the file system ofthe optical disk 11, based on the Studio_id and Content_id supplied fromthe optical disk directory managing unit 35, and supplies this to thefile system merging processing unit 36. As described above, the filesystem corresponding to the file system of the optical disk is stored inthe directory of the local storage 24 wherein the name includingStudio_id and Content_id are set (FIG. 5).

At this time, the file system of the optical disk 11 is output from theoptical disk directory managing unit 35 to the file system mergingprocessing unit 36.

In step S3, the file system merging processing unit 36 merges the filesystem of the optical disk 11 and the file system of the local storage24 as described with reference to FIG. 5 and FIG. 6, and generates thefirst virtual file system. The generated first virtual file system isoutput to the playback control unit 37, and is used for playback of theAV stream file.

In step S4, the playback control unit 37 specifies the navigationprogram from the supplied first virtual file system and executes this.Accordingly, as shown in FIG. 6, when the updated navigation program isin the first virtual file system, this navigation program (thenavigation program recorded on the local storage 24) is executed.

In step S5, the playback control unit 37 obtains the PlayList andSubPlayItem which the navigation program specifies as a playbacksegment, the flow advances to step S6, the local storage directorymanaging unit 34 and the optical disk directory managing unit 35 arecontrolled, and files referencing the obtained PlayList and SubPlayItem(AV file, text subtitle file, font file, and the like) are read out andsupplied to the decoder 26. Here, the time stamp expressed by a PlayListor SubPlayItem is converted to an address by the Clip information, andaccess is performed to the AV stream or the like.

That is to say, when the local storage 24 has an AV stream file whichthe PlayList or SubPlayItem references, the playback control unit 37reads out the AV stream file from the local storage 24, and if the localstorage 24 does not have such a file, the AV stream file is read outfrom the optical disk 11.

For example, when the playback control unit 37 controls the localstorage directory managing unit 34 and the optical disk directorymanaging unit 35 according to the file system in FIG. 6 and performsreadout of the AV stream, the AV stream file which is set with the filename “01000.m2ts” or the AV stream file which is set with the file name“02000.m2ts”, which are prepared in advance on the optical disk 11 isread out from the optical disk 11, and the AV stream file which is setwith the file name “04000.m2ts” which is added by being downloaded isread out from the local storage 24.

In step S7, the content playback processing to be described later usingFIG. 33 is executed, the read out AV stream file or text subtitle streamfile and the like are decoded, moving images or audio or subtitles areoutput from the display device, and the processing is ended.

Thus, the first virtual file system is generated and used when playingback content, whereby for example the data in a text subtitle file whichthe SubPlayItem references is read out simultaneously with the AV streamand is played back.

Next, the content playback processing which is executed in step S7 inFIG. 32 will be described with reference to the flow chart in FIG. 33.

In step S21, the playback control unit 37 (FIG. 4) controls the decoder26 to play back the AV stream data specified by the PlayItem.

In step S22, the operation input obtaining unit 32 determines whether ornot an operational input commanding subtitle data display has beenreceived. If it is determined in step S22 that an operational inputcommanding subtitle data display has not been received, the flowproceeds to step S28 to be described later.

If it is determined in step S22 that an operational input is received tocommand display of the subtitle data, the operation input obtaining unit32 supplies a signal corresponding to the operational input of the userto the menu screen display control unit 31 in Step S23. The menu screendisplay control unit 31 displays a list menu of subtitle data which canbe displayed on the display device.

In step S24, the operational input obtaining unit 32 determines whetheror not operational input has been received to specify a language for thesubtitle data to be displayed. If it is determined in step S24 thatoperational input has not been received to specify a language for thesubtitle data to be displayed, the processing is returned to step S23,and the processing thereafter is repeated.

In step S24, if it is determined that operational input has beenreceived to specify a language for the subtitle data to be displayed,the operation input obtaining unit 32 supplies a signal corresponding tothe operational input of the user to the playback control unit 37 inStep S25. The playback control unit 37 controls the local storagedirectory managing unit 34 to read out the text subtitle data referencedby the SubPlayItem specified based on the operational input of the user,and to supply this to the storage data acquiring unit 91 of the decoder26, as well as to read out the font style data corresponding to the font(outline font and the like) specified by the user, and supply this tothe storage data acquiring unit 91 of the decoder 26 as necessary.

In step S26, subtitle display processing which will be described laterwith reference to FIG. 34 and FIG. 35 is executed by the decoder 26.

In Step S27, the operational input obtaining unit 32 determines whetheror not operational input has been received to command a change oflanguage for the subtitle data to be displayed. If it is determined thatoperational input has been received to command a change of language forthe subtitle data to be displayed, the processing is returned to stepS25, and the processing thereafter is repeated.

If it is determined in step S22 that operational input has not beenreceived to command the display of subtitle data, or if it is determinedin step S27 that operational input has not been received to command achange of language for the subtitle data to be displayed, theoperational input obtaining unit 32 determines in step S28 whether ornot operational input has been received to command the end of contentplayback, or whether or not the AV stream data playing back has ended.

If it is determined in step S28 that operational input to command theend of content playback has not been received, and that the AV streamdata has not ended playing back, the operational input obtaining unit 32determines in step S29 whether or not operational input has beenreceived to stop the display of subtitles.

If it is determined in step S29 that operational input has not beenreceived to stop the display of subtitles, the processing is returned tostep S26, and the processing thereafter is repeated. If it is determinedin step S29 operational input has been received to stop the display ofsubtitles, the processing is returned to step S21, and the processingthereafter is repeated.

When it is determined in step S28 that operational input has beenreceived to command the end of content playback or that the AV streamdata playing back has ended, the processing is ended.

With such a process, the subtitles in the language desired by the userare displayed along with the video and audio of the content, using thetext subtitle file recorded in advance on the optical disk 11 ordownloaded from the server 3 and recorded onto the local storage 24, andthe text subtitle file to be read out is changed so as to change thelanguage of the subtitles to be displayed, based on the operationalinput by the user.

Next, the subtitle display process executed in step S26 of FIG. 33 willbe described with reference to the flowcharts in FIG. 34 and FIG. 35.

In step S51, a text data decoder 121 (FIG. 26) of the text subtitleprocessing unit 92 of the decoder 26 (FIG. 25) decodes the text subtitledata obtained from the storage data acquiring unit 91.

In step S52, the text data decoder 121 supplies the character objectincluded in the decoded text subtitle data to a character object buffer122, and so the character object is buffered by the character objectbuffer 122.

In step S53, the text data decoder 121 supplies the attribute data suchas font style (font_style), outline color(outline_palette_entry_id_ref), size (outline_size) and so forth whichare included in the decoded text subtitle data to the attribute databuffer 123, and so the attribute data is buffered by the attribute databuffer 123.

In Step S54, the font style detecting unit 155 (FIG. 27) of the fontrasterizer 124 determines whether or not the font style buffered in theprocessing in step S53 is an outline style.

If it is determined in step S54 that the font style is not an outlinestyle, that is to say, if the font style is determined to be a normalfont style, the normal font style obtaining unit 156 obtains the fontstyle data of a normal font style in step S55.

Conversely, if it is determined in step S54 that the font style is anoutline style, the outline style processing unit 157 obtains the fontstyle data of the outline style in step S56. Then in step S57, theoutline style processing unit 157 updates the font style data of theoutlines style, based on the attribute data such as the size or color ofthe outline buffered in the processing in step S53. That is to say, thefont style data of the outline style wherein the color or width of theoutline has changed is generated.

When the font style data for a normal font style is obtained in theprocessing in step S55, or when the font style data of an outline styleobtained in the processing in step S56 is updated in the processing instep S57, the flow proceeds to step S58 in FIG. 35.

In step S58, the character object obtaining unit 151 obtains a characterobject from the character object buffer 122 (FIG. 26) and supplies thisto the bookmark detecting unit 152.

In step S59, the rasterizing unit 153 obtains the font style data fromthe normal font style obtaining unit 156 or the outline style processingunit 157.

In Step S60, the bookmark detecting unit 152 references the attributesbuffered in the processing in step S53 (FIG. 34) and the bookmark buffer125, and determination is made as to whether or not the subtitle data tobe rasterized (the subtitle data corresponding to the character objectobtained in the processing in step S58) is bookmarked, and this issubtitle data which has already been buffered by the bookmark buffer125.

If it is determined in step S60 that the above-described data issubtitle data which has been bookmarked and buffered, the bookmarkdetecting unit 152 reads out the subtitle image data (raster data) forthe stored bookmark from the bookmark buffer 125 in step S61, andoutputs this. Thus, the flow proceeds to step S65.

Conversely, if it is determined in step S60 that the above-describeddata is subtitle data which has not been bookmarked and buffered, thecharacter object obtained in the processing in step S58 is supplied tothe rasterizing unit 153 from the bookmark detecting unit 152. Thus, theflow proceeds to step S62.

In step S62, the rasterizing unit 153 executes rasterizing based on thecharacter object obtained in the processing in step S58, the font styledata obtained (and updated in the processing in step S57 as needed) inthe processing in step S55 or S56 in FIG. 34, and the attribute databuffered in the processing of step 53 in FIG. 34, and outputs the rasterdata (character object data), which is the result of the executionthereof, to the subtitle graphics plane processing unit 93 (FIG. 25),and also supplies this to the bookmark storage control unit 154. Thesubtitle graphics plane processing unit 93 generates the subtitlegraphics plane based on the supplied raster data, and supplies this tothe synthesizing processing unit 94.

In step S63, the bookmark storage control unit 154 determines whether ornot a new bookmark is written to the attribute data based on suchattribute data of the subtitle data (character object data which israster data) rasterized in the processing in step S62.

If it is determined in step S63 that a bookmark is written, the bookmarkstorage control unit 154 stores the rasterized subtitle image data(raster data) in the bookmark buffer 125 in step S64.

After the processing in step S62, if it is determined in step S63 that abookmark is not written, or if the processing in step S61 is ended, thesynthesizing processing unit 94 (FIG. 25) synthesizes the suppliedsubtitle image data with the moving image data in step S65, and outputsthis. Thus, the subtitle display processing which is the processing instep S26 in FIG. 33 is ended, and the flow proceeds to step S27.

With such a processing, readout of the text subtitle file and font filedata is controlled so that the subtitle data in the language desired bythe user is displayed with the font desired by the user, with theattributes desired by the user, and the attribute data which is bufferedas necessary is changed and rasterized.

Accordingly, in the event that the frame currently being played back isa frame wherein the colors of the subtitle and video color are the sameor similar, that is to say, from the perspective of the user, in theevent that the subtitle and video appear to be integrated and thesubtitles cannot be differentiated, the user can display the textconfiguring the subtitles with a desired outline style by specifying adesired outline style, and so can differentiate the subtitles withcertainty.

Next, a manufacturing method of the recording medium 11 where data isstored which can be played back on the playback device 1 will bedescribed using a situation with the recording medium 11 being adisk-shaped recording medium as an example, with reference to FIG. 64and FIG. 65.

That is, as shown in FIG. 36, a master formed of glass for example orthe like is prepared, and a recording material such as a photoresist iscoated thereupon. Thus, the recording master is manufactured.

Then as shown in FIG. 37, the video data in a format capable of beingplayed back on the playback device 1, which is encoded with the encodingdevice (video encoder) with the software manufacturing processing unit,is temporarily stored in the buffer, the audio data encoded with theaudio encoder is temporarily stored in the buffer, and further, dataother than streaming data (for example, Indexes, Playlist, PlayItem, andso forth) which is encoded with the data encoder is temporarily storedin the buffer. The video data, audio data, and data other than streamingdata, which are each stored in the buffer, are multiplexed together witha synchronizing signal with a multiplexer (MPX), and an error-correctingcode is attached with an error-correcting coding circuit (ECC). Thenpredetermined modulations are made with a modulating circuit (MOD), andaccording to a predetermined format, the data is temporarily stored on amagnetic tape, for example, and the software to be recorded on therecording medium 11 which is capable of being played back on theplayback device 1 is manufactured.

The software is edited (pre-mastered) as needed, and a signal isgenerated for the format to be recorded on the optical disk. Then alaser beam is modulated to correspond to this recording signal and thislaser beam is irradiated on the photoresist on the master. Thus, thephotoresist on the master is exposed corresponding to the recordingsignal.

Then the master is developed, and pits are produced on the master disk.Processing such as electroforming and so forth, for example, isperformed on the master thus prepared, and a metal master on which thepits on the glass master are transferred over is manufactured. A metalstamper is manufactured from the metal master, and this serves as aforming mold.

A material such as PMMA (acrylic) or PC (polycarbonate) is inserted byinjection or so forth into the forming mold, and is fixed.Alternatively, after coating the 2P (ultraviolet hardening resin) or thelike on the metal stamper, ultraviolet light can be irradiated thereuponand thus hardened. Thus, the pits on the metal stamper can betransferred onto a replica made of resin or the like.

A reflective film is formed on the replica thus generated by vapordeposition or sputtering or the like. Alternatively, a reflective filmis formed on the generated replica by spin-coating.

Then, processing of the inner and outer diameter of the disk isperformed, and necessary processing is performed, such as attaching twodisks to one another. Further, a label is attached, a hub is attached,and the disk is inserted in a cartridge. Thus, the recording medium 11on which data is recorded which is capable of being played back on theplayback device 1 is completed.

Note that the above-described series of processing can also be executedwith software. With such software, the program configuring the softwareis installed in a computer with built-in dedicated hardware or isinstalled from a program storage medium onto a general-use personalcomputer or the like which is capable of executing various functionalityby installing various programs.

This program storage medium is not only configured with a removablemedium 28 such as a magnetic disk (including a flexible disk), opticaldisk (including CD-ROM (Compact Disk-Read Only Memory) or DVD (DigitalVersatile Disk)), optical magnetic disk (including MD(Mini-Disk)(registered trademark)), semiconductor memory, or the like onwhich the program is recorded and distributed to users separately fromthe computer as shown in FIG. 1, but also may be configured with memory23 such as ROM or RAM in which the program is recorded, or a localstorage 24 such as a hard disk, so as to be provided to users in a stateof being assembled into the device proper.

Also, according to the present Specification, the steps describing theprogram recorded onto the program storage medium include not only theprocessing performed in the described consecutive order, but alsoincludes processing that is executed concurrently or individually andnot necessarily consecutively.

Note that in the present Specification, “system” indicates the entiretyof devices configured of multiple devices.

The invention claimed is:
 1. An information processing device forgenerating subtitle data to display subtitles corresponding to apredetermined AV stream, comprising: character object holding means forholding a character object in order to display said subtitles; attributedata holding means for holding attribute data which includes at leastfont style specifying information which can specify at least a fontstyle with an outline as a font style to be applied for said characterobjects, and width specifying information which can specify the width ofthe outline of the character object corresponding to the font stylehaving an outline in the case that said font style having an outline isspecified in said font style specifying information; and convertingmeans for obtaining font style data of said font style having an outlinein the case whereby said font style having an outline is specified insaid font style specifying information held by said attribute dataholding means and converting said character object held by saidcharacter object holding means into subtitle data, using at least saidfont style data, wherein the converting means further comprises:obtaining means for obtaining both the font style data of said fontstyle having an outline and the width specifying information in the casethat said font style having an outline is specified in said font stylespecifying information, and width changing means for performingprocessing to expand or contract the width of the character objectoutline corresponding to said font style data obtained with saidobtaining means, based on said width specifying information, whereinthe 1) font style data, including an indication of whether the font hasan outline, and the 2) width specifying information are distinctlydesignated stored parameters within a dialog style set having aplurality of parameters, wherein the dialog style set includes, inaddition to the font style data and the width specifying information,player style data indicating whether or not permission is granted tochange the dialog style set to a user's individual style, the font styledata indicates a value from defined values of normal, bold, italic, boldand italic, outline bordered, bold and outline bordered, italic andoutline bordered, and bold italic and outline bordered, and wherein thedialog style set including the font style data, the width specifyinginformation, and the player style data is stored in a data structure inan unmodifiable fashion, wherein the font style data obtained by theconverting means and used to convert said character object held by saidcharacter object holding means into subtitle data is unmodified from thefont style data stored in the data structure.
 2. An informationprocessing method of an information processing device for generatingsubtitle data to display subtitles corresponding to a predetermined AVstream, comprising: a character object holding control step forcontrolling the holding of a character object in order to display saidsubtitles; an attribute data holding control step for controlling theholding of attribute data which includes at least font style specifyinginformation which can specify at least a font style having an outline asa font style to be applied for said character objects, and widthspecifying information which can specify the width of the outline of thecharacter object corresponding to the font style having an outline inthe case that said font style having an outline is specified in saidfont style specifying information; and a converting step for obtainingfont style data of said font style having an outline in the case wherebysaid font style having an outline is specified in said font stylespecifying information held by the control processing of said attributedata holding control step and converting said character object held intosubtitle data, using at least said font style data, the converting stepfurther comprising: obtaining both the font style data of said fontstyle having an outline and the width specifying information in the casethat said font style having an outline is specified in said font stylespecifying information, and performing processing to expand or contractthe width of the character object outline corresponding to said fontstyle data obtained with said obtaining, based on said width specifyinginformation, wherein the 1) font style data, including an indication ofwhether the font has an outline, and the 2) width specifying informationare distinctly stored parameters within a dialog style set having aplurality of parameters, wherein the dialog style set includes, inaddition to the font style data and the width specifying information,player style data indicating whether or not permission is granted tochange the dialog style set to a user's individual style, the font styledata indicates a value from defined values of normal, bold, italic, boldand italic, outline bordered, bold and outline bordered, italic andoutline bordered, and bold italic and outline bordered, and wherein thedialog style set including the font style data, the width specifyinginformation, and the player style data is stored in a data structure inan unmodifiable fashion, wherein the font style data obtained by theconverting and used to convert said held character object into subtitledata is unmodified from the font style data stored in the datastructure.
 3. A non-transitory computer storage device havingcomputer-readable instructions stored thereon that when executed by acomputer cause the computer to implement a process for generatingsubtitle data to display subtitles corresponding to a predetermined AVstream, comprising: a character object holding control step forcontrolling the holding of a character object in order to display saidsubtitles; an attribute data holding control step for controlling theholding of attribute data which includes at least font style specifyinginformation which can specify at least a font style having an outline asa font style to be applied for said character objects, and widthspecifying information which can specify the width of the outline of thecharacter object corresponding to the font style having an outline inthe case that said font style having an outline is specified in saidfont style specifying information; and a converting step for obtainingfont style data of said font style having an outline in the case wherebysaid font style having an outline is specified in said font stylespecifying information held by the control processing of said attributedata holding control step and converting said character object held intosubtitle data, using at least said font style data, the converting stepfurther comprises: obtaining both the font style data of said font stylehaving an outline and the width specifying information in the case thatsaid font style having an outline is specified in said font stylespecifying information, and performing processing to expand or contractthe width of the character object outline corresponding to said fontstyle data obtained with said obtaining, based on said width specifyinginformation, wherein the 1) font style data, including an indication ofwhether the font has an outline, and the 2) width specifying informationare distinctly stored parameters within a dialog style set having aplurality of parameters, wherein the dialog style set includes, inaddition to the font style data and the width specifying information,player style data indicating whether or not permission is granted tochange the dialog style set to a user's individual style, the font styledata indicates a value from defined values of normal, bold, italic, boldand italic, outline bordered, bold and outline bordered, italic andoutline bordered, and bold italic and outline bordered, and wherein thedialog style set including the font style data, the width specifyinginformation, and the player style data is stored in a data structure inan unmodifiable fashion, wherein the font style data obtained by theconverting and used to convert said held character object into subtitledata is unmodified from the font style data stored in the datastructure.
 4. The information processing device according to claim 1,wherein the width specifying information is stored in an 8-bit field. 5.The information processing device according to claim 1, wherein thedialog style set is included in a dialog style segment which correspondsto a packetized elementary stream (PES) packet.
 6. The informationprocessing method according to claim 2, further comprising: determiningwhether the dialog style set is settable to the user's individual stylebased on the player style data indicating whether or not permission isgranted to change the dialog style set to the user's individual style.7. An information processing device for generating subtitle data todisplay subtitles corresponding to a predetermined AV stream,comprising: processing circuitry configured to hold a character objectin order to display said subtitles, hold attribute data which includesat least font style specifying information which can specify at least afont style with an outline as a font style to be applied for saidcharacter objects, and width specifying information which specifies thewidth of the outline of the character object corresponding to the fontstyle having an outline in the case that said font style having anoutline is specified in said font style specifying information, obtainfont style data of said font style having an outline in the case wherebysaid font style having an outline is specified in said font stylespecifying information, convert said character object into subtitledata, using at least said font style data, obtain both the font styledata of said font style having an outline and the width specifyinginformation in the case that said font style having an outline isspecified in said font style specifying information, and performprocessing to expand or contract the width of the character objectoutline corresponding to said font style data obtained with saidobtaining means, based on said width specifying information, whereinthe 1) font style data, including an indication of whether the font hasan outline, and the 2) width specifying information are distinctlydesignated stored parameters within a dialog style set having aplurality of parameters, wherein the dialog style set includes, inaddition to the font style data and the width specifying information,player style data indicating whether or not permission is granted tochange the dialog style set to a user's individual style, the font styledata indicates a value from defined values of normal, bold, italic, boldand italic, outline bordered, bold and outline bordered, italic andoutline bordered, and bold italic and outline bordered, and wherein thedialog style set including the font style data, the width specifyinginformation, and the player style data is stored in a data structure inan unmodifiable fashion, wherein the font style data obtained by theconverting and used to convert said held character object into subtitledata is unmodified from the font style data stored in the datastructure.
 8. The information processing device according to claim 5,wherein the dialog style segment is included in a different PES packetfrom a dialog presentation segment.